<h2>Joints</h2>
<div class="contents">
<div class="sub">Introduction</div>
<img class="floatLeft" src="img/joint_problem.png"/>
Joints is continuation of the unsuccessful bankable project. Bankable itself proceeds on the idea of the <a href="http://unlimiteddesigncontest.org/nl/product/sofa-table">sofa table</a>. 
And apart from a new design, the aim of bankable was to circumvent the pricy water-cutter, and use fablab's <a href="http://amsterdam.fablab.nl/node/3161">shop bot</a>. However that went wrong.
<p>Two major reasons: </p>
<ol class="list_indent">
<li>Scaling went wrong.</li>
<li>The thickness of the milling bit was not anticipated upon</li>
</ol>
The first issue can be overcome when looking more carefully at converting svg to dxf using adobe illustrator. Second issue is a perfect challenge for iScriptDesign, and is the focus of this description
<p/>
Note that I don't have a cnc background whatsoever. The terminology used here is completely self invented, please contact me for jargon improvements if you have them available.
<a class="reference" href="http://unlimiteddesigncontest.org/nl/product/sofa-table">Sofa Table</a>
<a class="reference" href="http://amsterdam.fablab.nl/node/3161">Shop Bot</a>
<div class="sub">Material</div>
For the sheets of wood I choose the 18mm multiplex wood available everywhere (i got mine at goedkoop in Duivendrecht). Note that in mine case 18mm is not 18mm but 18.6 mm but iScriptDesign is perfectly capable of dealing with these oddities.
<div class="sub">Solutions</div>
<img class="floatRight" src="img/joint_solution.png"/>
The image above on the left shows in red the problem: routing a square hole leaves the red area uncut. In order to make sure that the square hole can be penetrated with the pen, the red spots must also be routed (either by the shopbot or manually with a jigsaw(decoupeerzaag)). Alternatively the pens can be manually routed at top or bottom, to make them fit into the "not so square holes".<br/>
The pens also have the same problem as milling the pens' armpit will also leave a leftover. In contrast to the holes however, this part is accessible with a circle saw or similar. As an alternative solution the pens can also be extended, so the pens' armpit is not connected to the joined plank. I do fear a decrease in strength and that's also subject to investigation.<br/>
below point wise the possible solutions for the holes:
<ul class="list_indent">
<li>modify the design so the shopbot will route the red spot. This will be done by attaching "routing ears" to the corners. (See right image)</li>
<li>manually route the top and bottom of the pens, and make them fit within the unmodified holes.</li>
<li>manually jigsaw the "not so square holes". Hopefully this won't leave a overshoot.</li>
</ul>
The solutions for the pens part is basically the same with extended penlength as an extra option:
<ul class="list_indent">
<li>leverage iScriptDesign's possibilities and incorporate the bit radius.</li>
<li>extend the pens, with the risk of losing strength</li>
<li>manually route the holes.</li>
<li>manually jigsaw the armpits.
</ul>
Of course I can look at different combinations. Solutions will be benchmarked on strength of the joint, realization speed, ease of handling, risk of errors and material damage.
<div class="sub">iScriptDesign</div>
First of all iScriptDesign has seen a major enhancement in that it's now possible to drop your own svg in the drop spot below the menu. With this enhancement it is not needed anymore to install iScriptDesign locally to start experimenting with it. The code and documentation for this enhancement is <a href="http://jdijkmeijer.blogspot.com/2011/01/file-api-with-jquery.html">here</a>.
<p/>
As mentioned above the design is done in iScriptDesign and parameterizable. (see iScriptDesign -&gt; FabMoments -&gt; pen joints) It consists of two planks, with the pens attached and the holes embedded. I need four of them both to investigate all solutions, but I hope 2 of them is enough<br>
iScriptDesign does have two functions which are router bit aware: squareHoles, and pensEdge. With optional rotating and mirroring they can make up every possible solution:
<pre>
	  array2String([[{x:6*distance, y:0}]].concat(rotate(mirror(pensEdge(distance, depth, 3, {bitRadius: bitRadius, overshoot: 7, startWithEar: true, spaceFirst: true}),'x'), 2*Math.PI/6))
	     .concat([[{x:-6*distance - 2*Math.cos(Math.PI/3)*7*distance, y:0}]].concat(mirror(rotate(pensEdge(distance, depth+extraDepth, 3, {overshoot: 7, startWithEar: false, spaceFirst: true}),Math.PI/3),'x'))));
</pre>
and to get the squareHoles use:
<pre>
      squareHoles(depth, distance, 3, {bitRadius: bitRadius})
</pre>
Both pensEdge and squareHoles take an optional parameter "settings" allowing for customisation. One of the options is bitRadius, responsible for the routing ear's size. PensEdge is thoroughly documented, squareHoles needs some more polishing on that part.
<a class="reference" href="http://www.iscriptdesign.com">iScriptDesign</a>
<a class="reference" href="http://jdijkmeijer.blogspot.com/2011/01/file-api-with-jquery.html">file drop</a>

<div class="sub">Work</div>
<uL>
<li>
copy and paste the export text to ai, export as dxf (using defaults) and open it at the shopbot machine with partworks. click ok.
</li>
<li>
scaling remains strange, have to scale it to factor 8, set canvas 
</li>
<li>
fablab amsterdam just received new milling bit (Atrax) with 3.18 diameter (1.59 mm bitradius). 
</li>
<li>
make sure the offset is correct (disselect origin offset), double check measurements (with measurement icon).
</li>
<li>
Select elements to be inside / outside cut.
</li>
<li>
tool paden aanmaken (vertical tab right above) and create profile toolpath, select the inside/outside for the selected elements.
</li>
<li>
check thicknes in same panel choose save to save shopbot part file (.spb)
</li>
<li>
Open sb3 (make sure it is switched on and for zeroing the bit is turning) press K, use arrows and page up/down to place bit). The zero position is the zero position in the partworks file.
<li>
<li>
To fine tune the zeroing press fixed and repeat the positioning until you hear slight sounds.
</li>
<li>
after that zero it for the x,y,z axis with Key z and parameter 3.
</li>
<li>
load file, you saved with partworks.
</li>
<li>
press start
</li>
</ul>
<div class="sub">Results</div>
Not yet.
</div>

</div>
